//package com.lucifer.cloud.boot.blog.ai.model.classification;
//
//import org.datavec.api.io.labels.ParentPathLabelGenerator;
//import org.datavec.api.split.FileSplit;
//import org.datavec.image.recordreader.ImageRecordReader;
//import org.deeplearning4j.datasets.datavec.RecordReaderDataSetIterator;
//import org.nd4j.linalg.dataset.api.iterator.DataSetIterator;
//import org.nd4j.linalg.dataset.api.preprocessor.ImagePreProcessingScaler;
//
//import java.io.File;
//
///**
// * @author lucifer
// * @date 2024/11/28 13:48
// */
//public class ImageDataLoader {
//
//    public static DataSetIterator getDataSetIterator(String imagePath) throws Exception {
//        // 设置图片路径
//        File parentDir = new File(imagePath);
//
//        FileSplit fileSplit = new FileSplit(parentDir);
//
//        // 使用 ParentPathLabelGenerator 根据文件夹名称生成标签
//        ParentPathLabelGenerator labelGenerator = new ParentPathLabelGenerator();
//
//        // 图像读取器
//        ImageRecordReader recordReader = new ImageRecordReader(Constant.height, Constant.width, Constant.channels, labelGenerator);
//        recordReader.initialize(fileSplit);
//
//        // 设置批量大小
//        DataSetIterator iterator = new RecordReaderDataSetIterator(recordReader, Constant.batchSize, 1, Constant.numClasses);
//
//        // 预处理：归一化图像
//        iterator.setPreProcessor(new ImagePreProcessingScaler(0, 1));
//
//
//        return iterator;
//    }
//}
